// Copyright 2022 a.o.smith ALL Rights Reserved
package com.liuxinlong.modules.system.service;

import com.liuxinlong.common.ImportResp;
import com.liuxinlong.modules.entity.SystemParameter;

import java.util.List;
import java.util.Map;

/**
 * 系统参数管理接口层
 * 
 * @author liuxinlong@hotwater.com.cn
 * @version 1.0.0
 * @since 2022-04-13
 *
 */
public interface ParameterService {
	/**
	 * 分页查询系统参数信息
	 * 
	 * @param queryParam 请求信息
	 * @return 系统参数信息列表
	 */
	List<Map<String,Object>> pageParameterInfo(Map<String,Object> queryParam);
	
	/**
	 * 统计系统参数数量
	 * 
	 * @param queryParam 查询参数
	 * @return 系统参数数量
	 */
	int countParameter(Map<String,Object> queryParam);
	
	/**
	 * 新增系统参数信息
	 * 
	 * @param parameter 系统参数信息
	 */
	void addParameterInfo(SystemParameter parameter);
	
	/**
	 * 更新系统参数信息
	 * 
	 * @param parameter 系统参数信息
	 */
	void updateParameterInfo(SystemParameter parameter);
	
	/**
	 * 删除系统参数信息
	 * 
	 * @param id 系统参数id
	 */
	void deleteParameterInfo(String id);

	/**
	 * 导入数据预处理
	 *
	 * @param fileName 文件地址
	 * @return 预处理数据
	 */
	ImportResp importParameters(String fileName);

	/**
	 * 批量新增系统参数信息
	 *
	 * @param dataList 系统参数列表
	 * @return 失败数据
	 */
	ImportResp batchAddParameter(List<SystemParameter> dataList);
}
